Script: --on windowEvent wdID,wdName,objNo,objName,objValue¬¬global gWindowPositions, gIssuesListWindowID, serialNum¬global selectedTitleNums, gIssuesWindowName, gIssueSelection, gCompositeListing¬global cMaxFieldChars, gIssuesListStartIndex, gIssuesListPage, gMultiIssuesListSelections¬global gPassthruIssuesSetup¬¬---------------------¬-- This is window #13¬---------------------¬¬if objValue="Open" then ¬ ¬ -- Restore old window position¬ put OldWindowPosition(13) into windowRect¬ if windowRect = empty then centerWindow wdName¬ else wsSet wdID,"0","Rect",windowRect¬ ¬ put fld "Title" into theTitle¬ put wdID into gIssuesListWindowID¬ ¬ -- Store off the number of this window¬ set xSelectedTitleNums of window id gIssuesListWindowID to selectedTitleNums¬ set xOriginalWindowName of window id gIssuesListWindowID to "Issues"¬ ¬ if gPassthruIssuesSetup <> "true" then -- Avoid if automatically called from ModifySelectedIssues¬ -- Set up the multiListSelections¬ put 1 into gIssueSelection¬ put empty into gMultiIssuesListSelections¬ put 0 into gIssuesListStartIndex¬ set the itemDelimiter to comma¬ put the last item of gIssueSelection into endSelect¬ put false into done¬ put 1 into x¬ repeat until done¬ add 1 to x¬ set cursor to busy¬ put the number of lines of LongPage(gCompositeListing, x) into test¬ if test = 0 then put true into done¬ else¬ put the number of lines of LongPage(gCompositeListing, x - 1) into temp¬ put temp + (line (x-1) of gIssuesListStartIndex) into lowerBound¬ put lowerBound into line x of gIssuesListStartIndex¬ end if¬ end repeat¬ ¬ -- Figure out how the selection is broken up between pages¬ if (the number of lines of gIssuesListStartIndex = 1) or (the last item of gIssueSelection <= line 2 of gIssuesListStartIndex) then¬ put gIssueSelection into gMultiIssuesListSelections¬ put 1 into gIssuesListPage¬ else¬ put xlate(gIssueSelection,comma,return) into theSelectList¬ repeat with x = the number of lines of gIssuesListStartIndex down to 2¬ set cursor to busy¬ put line x of gIssuesListStartIndex into thisStartNum¬ put selectLines (theSelectList,1,"N",">" & thisStartNum) into thisPageSelections¬ put selectLines(theSelectList,1,"N","≤" & thisStartNum) into theSelectList¬ if word 1 of thisPageSelections <> empty then¬ put xlate(array2Cnst(thisPageSelections,"-",thisStartNum),return,comma) into temp¬ if the last char of temp = coma then delete the last char of temp¬ put temp into line x of gMultiIssuesListSelections¬ put x into gIssuesListPage¬ end if¬ end repeat¬ ¬ if word 1 of theSelectList<> empty then¬ put 1 into gIssuesListPage¬ put xlate(theSelectList,return,comma) into temp¬ if the last char of temp = comma then¬ delete the last char of temp¬ put temp into line 1 of gMultiIssuesListSelections¬ end if¬ end if¬ end if¬ ¬ put LongPage(gCompositeListing,gIssuesListPage) into issuesList¬ set comicList_Text of window id gIssuesListWindowID to issuesList¬ put true into nextIsDisabled¬ if LongPage(gCompositeListing,gIssuesListPage + 1) <> empty then put false into nextIsDisabled¬ put (the number of lines of gIssuesListStartIndex > 1) into arrowsAreVisible¬ ¬ if issuesList <> empty or (line gIssuesListPage of gMultiIssuesListSelections < 1) then¬ get "Modify…_Disabled:False" & return & "Remove_Disabled:" & ((false) or (serialNum = empty)) & return & "i10_Disabled:False" & return¬ else¬ get "Modify…_Disabled:True" & return & "Remove_Disabled:True" & return & "i10_Disabled:true" & return -- i10 = "Quick Change"¬ end if¬ ¬ set the properties of window id gIssuesListWindowID to it & "Prev_Visible:" & arrowsAreVisible & return & "Next_Visible:" & arrowsAreVisible & return & "PageLabel_Visible:" & arrowsAreVisible & return & "PageLabel_Text:" & gIssuesListPage & return & "ComicList_Selection:" & (line gIssuesListPage of gMultiIssuesListSelections) & return & "Prev_Disabled:" & (gIssuesListPage = 1) & return & "Next_Disabled:" & nextIsDisabled & return¬ end if¬ ¬ put wdName into gIssuesWindowName --New for testing¬ ¬ wsSet gIssuesListWindowID, 0, "Name", theTitle¬ if there is a menuItem "Select All" of menu "Edit" then¬ enable menuItem "Select All" of menu "Edit"¬ end if¬ if there is a menuItem "Close" of menu "File" then¬ enable menuItem "Close" of menu "File"¬ end if¬ ¬ ¬else if objValue="Close" then ¬ -- save the window position¬ put "13" & tab & wdName & tab & wsGet(wdID,"0","Rect") into line 13 of gWindowPositions¬ put frontWindow() into theFrontID¬ if there is a menuItem "Select All" of menu "Edit" then¬ set the enabled of menuItem "Select All" of menu "edit" to (the visible of bg btn "Done Editing" of cd 1 of bg "Title")¬ end if¬ if there is a menuItem "Close" of menu "File" then¬ disable menuItem "Close" of menu "File"¬ if the name of window id theFrontID = gIssuesWindowName then put empty into gIssuesListWindowID¬ end if¬ ¬else if objValue="Suspend" then ¬ put frontWindow() into theFrontID¬ if the name of window id theFrontID = the short name of this stack then¬ if there is a menuItem "Select All" of menu "Edit" then¬ set the enabled of menuItem "Select All" of menu "edit" to (the visible of bg btn "Done Editing" of cd 1 of bg "Title")¬ end if¬ end if¬ if wsGet(theFrontID,"0","HasCloseBox") <> "True" then¬ if there is a menuItem "Close" of menu "File" then¬ disable menuItem "Close" of menu "File"¬ end if¬ end if¬ ¬else if objValue="Resume" then¬ if there is a menuItem "Select All" of menu "Edit" then¬ enable menuItem "Select All" of menu "Edit"¬ end if¬ if there is a menuItem "Close" of menu "File" then¬ enable menuItem "Close" of menu "File"¬ end if¬end if¬--end windowEvent¬¬¬¬
Result: i3_TextOfSelection
ItemType: PUSH
Rect: 298,307,386,327
TextSize: 12
AutoSize: FALSE
Name: New… N
Balloon: Click here (or type Commd-N) to add a new issue for this title.
Script: --on mouseUp wdID,wdName,objNo,objName,objValue¬global selectedTitleNums, gCompositeListing¬¬set cursor to watch¬¬send "NewIssue" to cd 2¬¬-- Set up the multilistSelections¬--put 1 into gIssueSelection¬--put empty into gMultiIssuesListSelections¬put 0 into gIssuesListStartIndex¬set the itemDelimiter to comma¬--put the last item of gIssueSelection into endSelect¬put false into done¬put 1 into x¬repeat until done¬ add 1 to x¬ set cursor to busy¬ put the number of lines of LongPage(gCompositeListing, x) into test¬ if test = 0 then put true into done¬ else¬ put the number of lines of LongPage(gCompositeListing, x - 1) into temp¬ put temp + (line (x-1) of gIssuesListStartIndex) into lowerBound¬ put lowerBound into line x of gIssuesListStartIndex¬ end if¬end repeat¬--end mouseUp¬
ItemType: PUSH
Rect: 398,307,481,327
AutoSize: FALSE
Name: Modify…
DefaultItem: TRUE
Balloon: Select an issue from the list above, then click here (or type Return) to change that issue’s information.
Script: --on mouseUp wdID,wdName,objNo,objName,objValue¬global gIssuesListWindowID¬global selectedTitleNums¬¬set cursor to watch¬¬put the xSelectedTitleNums of window id wdID into selectedTitleNums¬put the short id of card selectedTitleNums of bg "Title" into cardID¬if the short id of this card <> cardID then ¬ lock screen¬ go card id cardId¬end if¬¬put wdID into gIssuesListWindowID¬send ModifyIssues to cd 2¬--end mouseUp
ItemType: LIST
Rect: 10,25,508,293
TextFont: Monaco
TextSize: 9
AutoSize: FALSE
GrowItem: TRUE
Name: ComicList
DoubleClickItem: 2
KeyScroll: TRUE
Text:
Balloon: This is a list of issues for the given title.
Script: --on mouseUp wdID,wdName,objNo,objName,objValue¬global gMultiIssuesListSelections, gIssuesListPage, gIssuesListWindowID¬¬put comicList_Selection of window id gIssuesListWindowID into temp¬put temp into line gIssuesListPage of gMultiIssuesListSelections¬put ((word 1 of gMultiIssuesListSelections) = empty) into noneSelected¬put ("Remove_Disabled:" & noneSelected & return & "i10_Disabled:" & noneSelected & return & "Modify…_Disabled:" & noneSelected & return) into theProps¬set the properties of window id gIssuesListWindowID to theProps¬--end mouseUp
ItemType: TEXT
Rect: 13,5,47,18
TextFont: Geneva
TextSize: 10
WhiteColor: -4370,-4370,-4370
TextStyle: Bold
Text: Issue
ItemType: TEXT
Rect: 153,5,176,17
TextFont: Geneva
TextSize: 9
WhiteColor: -4370,-4370,-4370
TextStyle: Bold
Text: Qty
ItemType: TEXT
Rect: 121,5,154,17
TextFont: Geneva
TextSize: 9
WhiteColor: -4370,-4370,-4370
TextStyle: Bold
Text: Price
ItemType: TEXT
Rect: 175,5,209,17
TextFont: Geneva
TextSize: 9
WhiteColor: -4370,-4370,-4370
TextStyle: Bold
Text: Notes
ItemType: TEXT
Rect: 67,5,84,17
TextFont: Geneva
TextSize: 9
WhiteColor: -4370,-4370,-4370
TextStyle: Bold
Text: Cd
ItemType: PUSH
Rect: 10,307,98,327
AutoSize: FALSE
Name: Remove
Balloon: Click here to delete the selected issue.
Script: --on mouseUp wdID,wdName,objNo,objName,objValue¬Global stopRect, gProgressWindowName, stopIt¬global selectedTitleNums, gCompositeListing¬global gMultiIssuesListselections, gIssueSelection, gIssuesListStartIndex, gIssuesListPage¬¬set cursor to watch¬¬put the xSelectedTitleNums of window id wdID into selectedTitleNums¬put the short id of card selectedTitleNums of bg "Title" into cardID¬if the id of this card <> cardID then ¬ lock screen¬ go card id cardId¬end if¬¬put wdID into issuesWindowID¬put wdName into titleName¬¬-- Get the selection¬¬set cursor to watch¬put xlate(line 1 of gMultiIssuesListSelections, comma, return) into gIssueSelection¬repeat with x = 2 to the number of lines of gMultiIssuesListSelections¬ put xlate(line x of gMultiIssuesListSelections, comma, return) into thePageSelections¬ if word 1 of thePageSelections <> empty then¬ put line x of gIssuesListStartIndex into pageStartPos¬ put array2Cnst(thePageSelections,"+",pageStartPos) into adjustedList¬ put return & adjustedList after gIssueSelection¬ end if¬end repeat¬repeat while the first char of gIssueSelection = return¬ delete the first char of gIssueSelection¬end repeat¬put xlate(gIssueSelection,return,comma) into gIssueSelection¬¬put gIssueSelection into theLines¬put xlate(theLines,comma,return) into theLines¬put ComicList_Text of window id issuesWindowID into theOldList¬¬put the number of lines of theLines into numIssuesToRemove¬¬if numIssuesToRemove = 1 then ¬ put titleName && ParseIssue(line (theLines) of fld "Comic #") into issueNum¬ get WindowScript("Caution Alert","Remove the information for “" & issueNum & "?”","Remove")¬else¬ get windowscript("Caution Alert","Remove the information for the " & numIssuesToRemove && "selected issues?","Remove")¬end if¬¬if it <> empty then¬ if numIssuesToRemove > 1 then¬ put "Removing Issues" into gProgressWindowName¬ get windowscript("Progress","Removing:")¬ send InitProgress to cd 3¬ ¬ -- Store off the actual lines, so that if any change midway, we can find the remaining¬ put empty into issueList¬ repeat with x = 1 to numIssuesToRemove¬ put (line (line x of theLines) of fld "Comic #") & tab & (line (line x of theLines) of fld "Condition") & return after issueList¬ end repeat¬ delete the last char of issueList¬ ¬ put 0 into issuesRemoved¬ else¬ set cursor to watch¬ put theLines into issueList¬ end if¬ ¬ repeat with x = 1 to numIssuesToRemove¬ put line x of issueList into theLine¬ ¬ -- Update Progress Indicators¬ if numIssuesToRemove > 1 then¬ add 1 to issuesRemoved¬ ¬ -- Find the issue in the list¬ put insColumn(fld "Comic #",fld "Condition",2,tab) into NumsAndConditionsList¬ put find(NumsAndConditionsList, theLine,"Line","Exact") into theLine ¬ if theLine > 0 then¬ put parseIssue(line theLine of fld "Comic #") into issueNum¬ put titleName && issueNum into issueNum¬ ¬ ¬ set the properties of window gProgressWindowName to "CurrentTitle_Text:" & issueNum & return & "ProgressBar_Value:" & trunc((issuesRemoved / numIssuesToRemove) * 100) & return¬ ¬ -- Now actually delete the line¬ DeleteIssueLine theLine¬ if theLine <= the number of lines of theOldList then delete line theLine of theOldList¬ ¬ HandleSystemEvents stopRect¬ if StopIt then exit repeat¬ set cursor to busy¬ end if¬ else¬ -- Now actually delete the line¬ DeleteIssueLine theLine¬ delete line theLine of theOldList¬ end if¬ ¬ end repeat¬ if there is a window gProgressWindowName then wsSend gProgressWindowName,0,"Close"¬ ¬ set comicList_Text of window id issuesWindowID to theOldList¬ set comicList_Text of window id gIssuesListWindowID to LongPage (gCompositeListing,gIssuesListPage) ¬ -- reset the selection¬ if the number of lines of theOldList < theLine then¬ if the number of lines of theOldList > 0 then ¬ subtract 1 from theLine¬ else¬ set the properties of window id issuesWindowID to "Remove_Disabled:true" & return & "Modify…_Disabled:true" & return & "i10_Disabled:True" & return¬ end if¬ end if¬ ¬ set comicList_Selection of window id issuesWindowID to theLine¬ ¬ -- New Stuff 1/20/95¬ -- Set up the multilistSelections¬ put 1 into gIssueSelection¬ put empty into gMultiIssuesListSelections¬ put 0 into gIssuesListStartIndex¬ set the itemDelimiter to comma¬ put the last item of gIssueSelection into endSelect¬ put false into done¬ put 1 into x¬ repeat until done¬ add 1 to x¬ set cursor to busy¬ put the number of lines of LongPage(gCompositeListing, x) into test¬ if test = 0 then put true into done¬ else¬ put the number of lines of LongPage(gCompositeListing, x - 1) into temp¬ put temp + (line (x-1) of gIssuesListStartIndex) into lowerBound¬ put lowerBound into line x of gIssuesListStartIndex¬ end if¬ end repeat¬ ¬ if the visible of bg btn "Descriptions" then¬ send OpenCard to this card -- force update of compositeListing¬ end if¬ set cursor to arrow¬end if¬--end mouseUp¬¬
ItemType: PUSH
Rect: 173,307,288,327
TextSize: 12
AutoSize: FALSE
Name: Quick Change…
Balloon: Select an issue or issues from the list above, then click here to change the values in a given field for those issues.
Script: --on mouseUp wdID,wdName,objNo,objName,objValue¬global gIssuesListWindowID, firstSelectedLineNum, gFieldValue, gYears, selectedTitle¬Global gProgressWindowName, StopIt, stopRect, maxStringWidth, gCompositeGroup¬global selectedTitleNums, gCompositeListing, kBareDecimalFormatString¬global gMultiIssuesListselections, gIssueSelection, gIssuesListStartIndex¬global gIssuesListPage, gHasIssuesList¬global gTempNoteLine, gTempStoryLine¬global gShowWriters, gShowArtists, kMaxNoteDisplayLength¬¬set cursor to watch¬¬put the xSelectedTitleNums of window id wdID into selectedTitleNums¬put the short id of card selectedTitleNums of bg "Title" into cardID¬if the short id of this card <> cardID then ¬ lock screen¬ go card id cardId¬end if¬¬put wdID into gIssuesListWindowID¬¬-- Get the selection¬¬set cursor to watch¬put xlate(line 1 of gMultiIssuesListSelections, comma, return) into gIssueSelection¬repeat with x = 2 to the number of lines of gMultiIssuesListSelections¬ put xlate(line x of gMultiIssuesListSelections, comma, return) into thePageSelections¬ if word 1 of thePageSelections <> empty then¬ put line x of gIssuesListStartIndex into pageStartPos¬ put array2Cnst(thePageSelections,"+",pageStartPos) into adjustedList¬ put return & adjustedList after gIssueSelection¬ end if¬end repeat¬repeat while the first char of gIssueSelection = return¬ delete the first char of gIssueSelection¬end repeat¬put xlate(gIssueSelection,return,comma) into gIssueSelection¬¬put xlate(gIssueSelection,comma,return) into theLines¬¬¬put line 1 of theLines into firstSelectedLineNum¬put the number of lines of theLines into numIssues¬if numIssues = 1 then put "For the selected issue, change which field?" into theText¬else put "For the " & numIssues & " selected issues, change which field?" into theText¬¬get windowScript("Quick Change",theText)¬¬if it <> empty then ¬ set cursor to busy¬ ¬ put line 2 of it into selectedField¬ put empty into fieldName¬ if selectedField = "Quantity" then ¬ put "Quantity In Stock" into fieldName¬ put GetNum(gFieldValue,"US") into gFieldValue¬ else if selectedField = "Cost" then¬ put "Price Paid" into fieldName¬ put GetNum(gFieldValue,"US") into gFieldValue¬ put NumFormat(gFieldValue,kBareDecimalFormatString, "US") into gFieldValue¬ else if selectedField = "Cover Price" then¬ put "Cover Price" into fieldName¬ put GetNum(gFieldValue,"US") into gFieldValue¬ put NumFormat(gFieldValue,kBareDecimalFormatString, "US") into gFieldValue¬ else if selectedField = "Marked" then¬ put "Marked" into fieldName¬ if gFieldValue = "True" then put "√" into gFieldValue¬ else put empty into gFieldValue¬ else if selectedField = "Notes" then¬ put "NonStorylineNotes" into fieldName¬ put selectLines(gFieldValue,1,"Char","> ") into gFieldValue¬ if the last char of gFieldValue = return then delete the last char of gFieldValue¬ repeat with x = 1 to the number of lines of gFieldValue¬ put line x of gFieldValue into gTempNoteLine¬ send "searchSpecialNotes" to cd 1¬ end repeat¬ put replace(gFieldValue,return,"; ","Char") into gFieldValue¬ else if selectedField = "Storylines" then¬ put "Notes 1" into fieldName¬ put selectLines(gFieldValue,1,"Char","> ") into gFieldValue¬ if the last char of gFieldValue = return then delete the last char of gFieldValue¬ repeat with x = 1 to the number of lines of gFieldValue¬ put line x of gFieldValue into gTempStoryLine¬ send "SearchStoryLines" to cd 1¬ end repeat¬ put replace(gFieldValue,return,"; ","Char") into gFieldValue¬ else if selectedField = "Selling Price" then¬ put "Price" into fieldName¬ put GetNum(gFieldValue,"US") into gFieldValue¬ put NumFormat(gFieldValue,kBareDecimalFormatString, "US") into gFieldValue¬ else¬ -- years¬ put the last word of selectedField into theYear¬ put find(gYears,theYear,Line,"Exact") into whereFound¬ if whereFound > 0 then put "Price Year " & whereFound into fieldName¬ put GetNum(gFieldValue,"US") into gFieldValue¬ put NumFormat(gFieldValue,kBareDecimalFormatString, "US") into gFieldValue¬ end if¬ ¬ if fieldName = empty then¬ get WindowScript("Stop Alert","Couldn’t find the chosen field. Please report this error to Human Computing.")¬ else¬ put "Changing Issues" into gProgressWindowName¬ get windowscript("Progress","Changing:","True","True")¬ send InitProgress to cd 3¬ ¬ put ((fieldName = "Condition") or (fieldName = "Quantity in Stock") or (fieldName = "Comic #") or (fieldName = "NonStorylineNotes") or (fieldName = "Notes 1") or (fieldName = "Price")) into mustModifyCompositeList¬ repeat with x = 1 to numIssues¬ put line x of theLines into theIssueLine¬ put line (theIssueLine) of fld "Comic #" into issueNumber¬ ¬ put selectedTitle && ParseIssue(issueNumber) into issueName¬ wsSet gProgressWindowName,0,"Properties","CurrentTitle_Text:" & HCTruncString(issueName,maxStringWidth,true,"Chicago",12,"Plain") & return & "ProgressBar_Value:" & trunc(((x-1) / numIssues) * 100) & return¬ ¬ if fieldName <> "Notes 1" then put gFieldValue into line theIssueLine of fld (fieldName)¬ else¬ put RetrieveLongField("Notes", the short id of this card) into storylines¬ put gFieldValue into line theIssueLine of storylines¬ StoreLongfield storylines, "Notes", the short id of this card, true¬ end if ¬ if mustModifyCompositeList then¬ put line (theIssueLine) of fld "Condition" into condition¬ put line (theIssueLine) of fld "Quantity In Stock" into quantity¬ put line theIssueLine of fld "Price" into price¬ if fieldName <> "Notes 1" then ¬ put line theIssueLine of RetrieveLongField("Notes", the short id of this card) into storylines¬ else ¬ -- Already got it¬ end if¬ put line theIssueLine of fld "NonStorylineNotes" into notes¬ put line theIssueLine of RetrieveLongField("Writer", the short id of this card) into writerLine¬ put line theIssueLine of RetrieveLongField("Artist", the short id of this card) into artistLine¬ ¬ put CreateComposite(issueNumber, condition, price, quantity, notes, storylines, writerLine, artistLine, true, gShowWriters, gShowArtists, kMaxNoteDisplayLength, false) into compositeLine¬ put compositeLine into line theIssueLine of gCompositeListing¬ put LongPage (gCompositeListing, gCompositeGroup) into newPage¬ put newPage into fld "Composite Listing"¬ end if¬ ¬ HandleSystemEvents stopRect¬ if StopIt then exit repeat¬ set cursor to busy¬ end repeat¬ ¬ if not StopIt then¬ if there is a window gProgressWindowName then¬ set the properties of window gProgressWindowName to "ProgressBar_Value:100" & return¬ end if¬ end if¬ ¬ if there is a window gProgressWindowName then close window gProgressWindowName¬ ¬ if mustModifyCompositeList then¬ wsSet gIssuesListWindowID,"ComicList","Text", newPage¬ -- Already set to proper page in modification above¬ ¬ if selectedField = "Quantity" then ¬ -- Update the index of titles who have issues in stock¬ put line selectedTitleNums of gHasIssuesList into oldHasIssue¬ put statistics(fld "Quantity in Stock","S") into numIssuesInStock¬ if (numIssuesInStock is a number) and (numIssuesInStock > 0) then¬ put "1" into temp¬ else¬ put "0" into temp¬ end if¬ if temp <> oldHasIssue then¬ put temp into line selectedTitleNums of gHasIssuesList¬ send UpdateMyTitlesList to cd 2 -- Update Indices¬ end if¬ end if¬ ¬ wsSet gIssuesListWindowID,"ComicList","Selection", xlate(theLines,return,comma)¬ end if¬ ¬ ¬ end if¬end if¬¬--end mouseUp¬¬
ItemType: PICT
Rect: 490,3,507,20
Name: Next
Script: --on mouseUp wdID,wdName,objNo,objName,objValue¬global gIssuesListPage, gMultiIssuesListSelections, gIssuesListWindowID¬global gCompositeListing¬¬put comicList_Selection of window id gIssuesListWindowID into temp¬if temp = 0 or temp = empty then ¬ put empty into line gIssuesListPage of gMultiIssuesListSelections¬else¬ put the number of items of temp into numItems¬ if numItems = 1 then put "issue" into theText¬ else put "issues" into theText¬ answer "Keep the " & numItems & " selected " & theText & " from this page?" with "No" or "Keep"¬ if it = "Keep" then¬ put temp into line gIssuesListPage of gMultiIssuesListSelections¬ else¬ put empty into line gIssuesListPage of gMultiIssuesListSelections¬ end if¬end if¬¬set cursor to watch¬¬add 1 to gIssuesListPage¬set comicList_text of window id gIssuesListWindowID to LongPage(gCompositeListing, gIssuesListPage)¬put (LongPage(gCompositeListing, gIssuesListPage + 1) = empty) into nextisDisabled¬¬set the properties of window id gIssuesListWindowID to "ComicList_Selection:" & line gIssuesListPage of gMultiIssuesListSelections & return & "Prev_Disabled:False" & return & "Next_Disabled:" & nextIsDisabled & return & "PageLabel_Text:" & gIssuesListPage¬--end mouseUp¬
ItemType: PICT
Rect: 454,3,471,20
Disabled: TRUE
Name: Prev
Script: --on mouseUp wdID,wdName,objNo,objName,objValue¬global gIssuesListPage, gMultiIssuesListSelections, gIssuesListWindowID¬global gCompositeListing¬¬put comicList_Selection of window id gIssuesListWindowID into temp¬if temp = 0 or temp = empty then ¬ put empty into line gIssuesListPage of gMultiIssuesListSelections¬else¬ put the number of items of temp into numItems¬ if numItems = 1 then put "issue" into theText¬ else put "issues" into theText¬ answer "Keep the " & numItems & " selected " & theText & " from this page?" with "No" or "Keep"¬ if it = "Keep" then¬ put temp into line gIssuesListPage of gMultiIssuesListSelections¬ else¬ put empty into line gIssuesListPage of gMultiIssuesListSelections¬ end if¬end if¬¬set cursor to watch¬¬subtract 1 from gIssuesListPage¬set comicList_text of window id gIssuesListWindowID to LongPage(gCompositeListing, gIssuesListPage)¬put false into nextisDisabled¬¬set the properties of window id gIssuesListWindowID to "ComicList_Selection:" & line gIssuesListPage of gMultiIssuesListSelections & return & "Prev_Disabled:" & (gIssuesListPage = 1) & return & "Next_Disabled:" & nextIsDisabled & return & "PageLabel_Text:" & gIssuesListPage¬--end mouseUp